<script setup lang="ts">
import { useMemberStore } from "@/stores";

const useMember = useMemberStore();

const onLogout = () => {
  console.log("用户退出登录");
  uni.showModal({
    title: "确认退出登录？",
    content: "确认后将进入到未登录状态",
    showCancel: true,
    success: function (res) {
      if (res.confirm) {
        console.log("用户点击确定");
        // 去除本地登录缓存
        // 缓存状态更新原理--pinia，之后会update对组件my中的v-if的登录和未登录的情况进行更新
        useMember.clearProfile();
        // 返回上一页
        uni.navigateBack({ delta: 1 });
      } else if (res.cancel) {
        console.log("用户点击取消");
      }
    },
  });
};
</script>

<template>
  <view class="viewport">
    <!-- 列表1 -->
    <view class="list" v-if="useMember.profile">
      <navigator
        url="/pagesMember/address/address"
        hover-class="none"
        class="item arrow"
      >
        我的打赏
      </navigator>
    </view>
    <!-- 列表2 -->
    <view class="list">
      <button hover-class="none" class="item arrow" open-type="openSetting">
        授权管理
      </button>
      <button hover-class="none" class="item arrow" open-type="feedback">
        问题反馈
      </button>
      <button hover-class="none" class="item arrow" open-type="contact">
        联系我们
      </button>
    </view>
    <!-- 列表3 -->
    <view class="list">
      <navigator hover-class="none" class="item arrow" url=" "
        >关于电子书分享平台</navigator
      >
    </view>
    <!-- 操作按钮 -->
    <view v-if="useMember.profile" @tap="onLogout" class="action">
      <view class="button">退出登录</view>
    </view>
  </view>
</template>

<style lang="scss">
page {
  background-color: #f4f4f4;
}

.viewport {
  padding: 20rpx;
}

/* 列表 */
.list {
  padding: 0 20rpx;
  background-color: #fff;
  margin-bottom: 20rpx;
  border-radius: 10rpx;
  .item {
    line-height: 90rpx;
    padding-left: 10rpx;
    font-size: 30rpx;
    color: #333;
    border-top: 1rpx solid #ddd;
    position: relative;
    text-align: left;
    border-radius: 0;
    background-color: #fff;
    &::after {
      width: auto;
      height: auto;
      left: auto;
      border: none;
    }
    &:first-child {
      border: none;
    }
    &::after {
      right: 5rpx;
    }
  }
  .arrow::after {
    content: "\e6c2";
    position: absolute;
    top: 50%;
    color: #ccc;
    font-family: "erabbit" !important;
    font-size: 32rpx;
    transform: translateY(-50%);
  }
}

/* 操作按钮 */
.action {
  text-align: center;
  line-height: 90rpx;
  margin-top: 40rpx;
  font-size: 32rpx;
  color: #333;
  .button {
    background-color: #fff;
    margin-bottom: 20rpx;
    border-radius: 10rpx;
  }
}
</style>
